undefined is a value assigned to a variable that has been declared but hasn't been assigned a value.
null is a value that represents the intentional absence of any object value.
If a function doesn't have a return statement, it returns undefined by default.
If you try to access an object property that doesn't exist, you get undefined
undefined + 1 = NaN (Not a Number): You can't add 'nothingness' to a number.
Optional Chaining: The Optional Chaining operator allows you to read a property deep within a chain of connected objects without having to manually check if each level exists.
It’s often used as a placeholder for an object that might be created later.
It’s used to clear the contents of a variable or property.
If you run typeof null, JavaScript returns 'object'.
It is the root type in prototype chain
In math, null is treated as 0.
Nullish Coalescing: The Nullish Coalescing operator is a logical operator that returns its right-hand side operand when its left-hand side operand is null or undefined.